/**
 * <copyright>
 * </copyright>
 *
 * $Id$
 */
package br.ufpe.cin.bf;

import org.eclipse.emf.ecore.EAttribute;
import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.EEnum;
import org.eclipse.emf.ecore.EPackage;
import org.eclipse.emf.ecore.EReference;

/**
 * <!-- begin-user-doc -->
 * The <b>Package</b> for the model.
 * It contains accessors for the meta objects to represent
 * <ul>
 *   <li>each class,</li>
 *   <li>each feature of each class,</li>
 *   <li>each enum,</li>
 *   <li>and each data type</li>
 * </ul>
 * <!-- end-user-doc -->
 * @see br.ufpe.cin.bf.BfFactory
 * @model kind="package"
 * @generated
 */
public interface BfPackage extends EPackage {
	/**
	 * The package name.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	String eNAME = "bf";

	/**
	 * The package namespace URI.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	String eNS_URI = "cin.ufpe.br/bf";

	/**
	 * The package namespace name.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	String eNS_PREFIX = "benchmarkingframework";

	/**
	 * The singleton instance of the package.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	BfPackage eINSTANCE = br.ufpe.cin.bf.impl.BfPackageImpl.init();

	/**
	 * The meta object id for the '{@link br.ufpe.cin.bf.impl.BenchmarkingFrameworkImpl <em>Benchmarking Framework</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see br.ufpe.cin.bf.impl.BenchmarkingFrameworkImpl
	 * @see br.ufpe.cin.bf.impl.BfPackageImpl#getBenchmarkingFramework()
	 * @generated
	 */
	int BENCHMARKING_FRAMEWORK = 0;

	/**
	 * The feature id for the '<em><b>Name</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int BENCHMARKING_FRAMEWORK__NAME = 0;

	/**
	 * The feature id for the '<em><b>Description</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int BENCHMARKING_FRAMEWORK__DESCRIPTION = 1;

	/**
	 * The feature id for the '<em><b>Open Search</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int BENCHMARKING_FRAMEWORK__OPEN_SEARCH = 2;

	/**
	 * The feature id for the '<em><b>Records</b></em>' containment reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int BENCHMARKING_FRAMEWORK__RECORDS = 3;

	/**
	 * The feature id for the '<em><b>Lists</b></em>' containment reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int BENCHMARKING_FRAMEWORK__LISTS = 4;

	/**
	 * The number of structural features of the '<em>Benchmarking Framework</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int BENCHMARKING_FRAMEWORK_FEATURE_COUNT = 5;

	/**
	 * The meta object id for the '{@link br.ufpe.cin.bf.impl.RecordImpl <em>Record</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see br.ufpe.cin.bf.impl.RecordImpl
	 * @see br.ufpe.cin.bf.impl.BfPackageImpl#getRecord()
	 * @generated
	 */
	int RECORD = 1;

	/**
	 * The feature id for the '<em><b>Name</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int RECORD__NAME = 0;

	/**
	 * The feature id for the '<em><b>Description</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int RECORD__DESCRIPTION = 1;

	/**
	 * The feature id for the '<em><b>Attributes</b></em>' containment reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int RECORD__ATTRIBUTES = 2;

	/**
	 * The feature id for the '<em><b>Groups</b></em>' containment reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int RECORD__GROUPS = 3;

	/**
	 * The number of structural features of the '<em>Record</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int RECORD_FEATURE_COUNT = 4;

	/**
	 * The meta object id for the '{@link br.ufpe.cin.bf.impl.AttributeImpl <em>Attribute</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see br.ufpe.cin.bf.impl.AttributeImpl
	 * @see br.ufpe.cin.bf.impl.BfPackageImpl#getAttribute()
	 * @generated
	 */
	int ATTRIBUTE = 2;

	/**
	 * The feature id for the '<em><b>Name</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int ATTRIBUTE__NAME = 0;

	/**
	 * The feature id for the '<em><b>Type</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int ATTRIBUTE__TYPE = 1;

	/**
	 * The feature id for the '<em><b>Mandatory</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int ATTRIBUTE__MANDATORY = 2;

	/**
	 * The feature id for the '<em><b>List</b></em>' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int ATTRIBUTE__LIST = 3;

	/**
	 * The feature id for the '<em><b>Label</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int ATTRIBUTE__LABEL = 4;

	/**
	 * The feature id for the '<em><b>Multiple</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int ATTRIBUTE__MULTIPLE = 5;

	/**
	 * The feature id for the '<em><b>Record</b></em>' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int ATTRIBUTE__RECORD = 6;

	/**
	 * The number of structural features of the '<em>Attribute</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int ATTRIBUTE_FEATURE_COUNT = 7;

	/**
	 * The meta object id for the '{@link br.ufpe.cin.bf.impl.ListElementImpl <em>List Element</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see br.ufpe.cin.bf.impl.ListElementImpl
	 * @see br.ufpe.cin.bf.impl.BfPackageImpl#getListElement()
	 * @generated
	 */
	int LIST_ELEMENT = 3;

	/**
	 * The feature id for the '<em><b>Name</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int LIST_ELEMENT__NAME = 0;

	/**
	 * The number of structural features of the '<em>List Element</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int LIST_ELEMENT_FEATURE_COUNT = 1;

	/**
	 * The meta object id for the '{@link br.ufpe.cin.bf.impl.ListImpl <em>List</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see br.ufpe.cin.bf.impl.ListImpl
	 * @see br.ufpe.cin.bf.impl.BfPackageImpl#getList()
	 * @generated
	 */
	int LIST = 4;

	/**
	 * The feature id for the '<em><b>Elements</b></em>' containment reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int LIST__ELEMENTS = 0;

	/**
	 * The feature id for the '<em><b>Name</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int LIST__NAME = 1;

	/**
	 * The number of structural features of the '<em>List</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int LIST_FEATURE_COUNT = 2;

	/**
	 * The meta object id for the '{@link br.ufpe.cin.bf.impl.AttributeGroupImpl <em>Attribute Group</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see br.ufpe.cin.bf.impl.AttributeGroupImpl
	 * @see br.ufpe.cin.bf.impl.BfPackageImpl#getAttributeGroup()
	 * @generated
	 */
	int ATTRIBUTE_GROUP = 5;

	/**
	 * The feature id for the '<em><b>Attributes</b></em>' containment reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int ATTRIBUTE_GROUP__ATTRIBUTES = 0;

	/**
	 * The feature id for the '<em><b>Name</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int ATTRIBUTE_GROUP__NAME = 1;

	/**
	 * The feature id for the '<em><b>Label</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int ATTRIBUTE_GROUP__LABEL = 2;

	/**
	 * The number of structural features of the '<em>Attribute Group</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int ATTRIBUTE_GROUP_FEATURE_COUNT = 3;

	/**
	 * The meta object id for the '{@link br.ufpe.cin.bf.Type <em>Type</em>}' enum.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see br.ufpe.cin.bf.Type
	 * @see br.ufpe.cin.bf.impl.BfPackageImpl#getType()
	 * @generated
	 */
	int TYPE = 6;


	/**
	 * Returns the meta object for class '{@link br.ufpe.cin.bf.BenchmarkingFramework <em>Benchmarking Framework</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>Benchmarking Framework</em>'.
	 * @see br.ufpe.cin.bf.BenchmarkingFramework
	 * @generated
	 */
	EClass getBenchmarkingFramework();

	/**
	 * Returns the meta object for the attribute '{@link br.ufpe.cin.bf.BenchmarkingFramework#getName <em>Name</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the attribute '<em>Name</em>'.
	 * @see br.ufpe.cin.bf.BenchmarkingFramework#getName()
	 * @see #getBenchmarkingFramework()
	 * @generated
	 */
	EAttribute getBenchmarkingFramework_Name();

	/**
	 * Returns the meta object for the attribute '{@link br.ufpe.cin.bf.BenchmarkingFramework#getDescription <em>Description</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the attribute '<em>Description</em>'.
	 * @see br.ufpe.cin.bf.BenchmarkingFramework#getDescription()
	 * @see #getBenchmarkingFramework()
	 * @generated
	 */
	EAttribute getBenchmarkingFramework_Description();

	/**
	 * Returns the meta object for the attribute '{@link br.ufpe.cin.bf.BenchmarkingFramework#isOpenSearch <em>Open Search</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the attribute '<em>Open Search</em>'.
	 * @see br.ufpe.cin.bf.BenchmarkingFramework#isOpenSearch()
	 * @see #getBenchmarkingFramework()
	 * @generated
	 */
	EAttribute getBenchmarkingFramework_OpenSearch();

	/**
	 * Returns the meta object for the containment reference list '{@link br.ufpe.cin.bf.BenchmarkingFramework#getRecords <em>Records</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the containment reference list '<em>Records</em>'.
	 * @see br.ufpe.cin.bf.BenchmarkingFramework#getRecords()
	 * @see #getBenchmarkingFramework()
	 * @generated
	 */
	EReference getBenchmarkingFramework_Records();

	/**
	 * Returns the meta object for the containment reference list '{@link br.ufpe.cin.bf.BenchmarkingFramework#getLists <em>Lists</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the containment reference list '<em>Lists</em>'.
	 * @see br.ufpe.cin.bf.BenchmarkingFramework#getLists()
	 * @see #getBenchmarkingFramework()
	 * @generated
	 */
	EReference getBenchmarkingFramework_Lists();

	/**
	 * Returns the meta object for class '{@link br.ufpe.cin.bf.Record <em>Record</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>Record</em>'.
	 * @see br.ufpe.cin.bf.Record
	 * @generated
	 */
	EClass getRecord();

	/**
	 * Returns the meta object for the attribute '{@link br.ufpe.cin.bf.Record#getName <em>Name</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the attribute '<em>Name</em>'.
	 * @see br.ufpe.cin.bf.Record#getName()
	 * @see #getRecord()
	 * @generated
	 */
	EAttribute getRecord_Name();

	/**
	 * Returns the meta object for the attribute '{@link br.ufpe.cin.bf.Record#getDescription <em>Description</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the attribute '<em>Description</em>'.
	 * @see br.ufpe.cin.bf.Record#getDescription()
	 * @see #getRecord()
	 * @generated
	 */
	EAttribute getRecord_Description();

	/**
	 * Returns the meta object for the containment reference list '{@link br.ufpe.cin.bf.Record#getAttributes <em>Attributes</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the containment reference list '<em>Attributes</em>'.
	 * @see br.ufpe.cin.bf.Record#getAttributes()
	 * @see #getRecord()
	 * @generated
	 */
	EReference getRecord_Attributes();

	/**
	 * Returns the meta object for the containment reference list '{@link br.ufpe.cin.bf.Record#getGroups <em>Groups</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the containment reference list '<em>Groups</em>'.
	 * @see br.ufpe.cin.bf.Record#getGroups()
	 * @see #getRecord()
	 * @generated
	 */
	EReference getRecord_Groups();

	/**
	 * Returns the meta object for class '{@link br.ufpe.cin.bf.Attribute <em>Attribute</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>Attribute</em>'.
	 * @see br.ufpe.cin.bf.Attribute
	 * @generated
	 */
	EClass getAttribute();

	/**
	 * Returns the meta object for the attribute '{@link br.ufpe.cin.bf.Attribute#getName <em>Name</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the attribute '<em>Name</em>'.
	 * @see br.ufpe.cin.bf.Attribute#getName()
	 * @see #getAttribute()
	 * @generated
	 */
	EAttribute getAttribute_Name();

	/**
	 * Returns the meta object for the attribute '{@link br.ufpe.cin.bf.Attribute#getType <em>Type</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the attribute '<em>Type</em>'.
	 * @see br.ufpe.cin.bf.Attribute#getType()
	 * @see #getAttribute()
	 * @generated
	 */
	EAttribute getAttribute_Type();

	/**
	 * Returns the meta object for the attribute '{@link br.ufpe.cin.bf.Attribute#isMandatory <em>Mandatory</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the attribute '<em>Mandatory</em>'.
	 * @see br.ufpe.cin.bf.Attribute#isMandatory()
	 * @see #getAttribute()
	 * @generated
	 */
	EAttribute getAttribute_Mandatory();

	/**
	 * Returns the meta object for the reference '{@link br.ufpe.cin.bf.Attribute#getList <em>List</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the reference '<em>List</em>'.
	 * @see br.ufpe.cin.bf.Attribute#getList()
	 * @see #getAttribute()
	 * @generated
	 */
	EReference getAttribute_List();

	/**
	 * Returns the meta object for the attribute '{@link br.ufpe.cin.bf.Attribute#getLabel <em>Label</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the attribute '<em>Label</em>'.
	 * @see br.ufpe.cin.bf.Attribute#getLabel()
	 * @see #getAttribute()
	 * @generated
	 */
	EAttribute getAttribute_Label();

	/**
	 * Returns the meta object for the attribute '{@link br.ufpe.cin.bf.Attribute#isMultiple <em>Multiple</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the attribute '<em>Multiple</em>'.
	 * @see br.ufpe.cin.bf.Attribute#isMultiple()
	 * @see #getAttribute()
	 * @generated
	 */
	EAttribute getAttribute_Multiple();

	/**
	 * Returns the meta object for the reference '{@link br.ufpe.cin.bf.Attribute#getRecord <em>Record</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the reference '<em>Record</em>'.
	 * @see br.ufpe.cin.bf.Attribute#getRecord()
	 * @see #getAttribute()
	 * @generated
	 */
	EReference getAttribute_Record();

	/**
	 * Returns the meta object for class '{@link br.ufpe.cin.bf.ListElement <em>List Element</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>List Element</em>'.
	 * @see br.ufpe.cin.bf.ListElement
	 * @generated
	 */
	EClass getListElement();

	/**
	 * Returns the meta object for the attribute '{@link br.ufpe.cin.bf.ListElement#getName <em>Name</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the attribute '<em>Name</em>'.
	 * @see br.ufpe.cin.bf.ListElement#getName()
	 * @see #getListElement()
	 * @generated
	 */
	EAttribute getListElement_Name();

	/**
	 * Returns the meta object for class '{@link br.ufpe.cin.bf.List <em>List</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>List</em>'.
	 * @see br.ufpe.cin.bf.List
	 * @generated
	 */
	EClass getList();

	/**
	 * Returns the meta object for the containment reference list '{@link br.ufpe.cin.bf.List#getElements <em>Elements</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the containment reference list '<em>Elements</em>'.
	 * @see br.ufpe.cin.bf.List#getElements()
	 * @see #getList()
	 * @generated
	 */
	EReference getList_Elements();

	/**
	 * Returns the meta object for the attribute '{@link br.ufpe.cin.bf.List#getName <em>Name</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the attribute '<em>Name</em>'.
	 * @see br.ufpe.cin.bf.List#getName()
	 * @see #getList()
	 * @generated
	 */
	EAttribute getList_Name();

	/**
	 * Returns the meta object for class '{@link br.ufpe.cin.bf.AttributeGroup <em>Attribute Group</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>Attribute Group</em>'.
	 * @see br.ufpe.cin.bf.AttributeGroup
	 * @generated
	 */
	EClass getAttributeGroup();

	/**
	 * Returns the meta object for the containment reference list '{@link br.ufpe.cin.bf.AttributeGroup#getAttributes <em>Attributes</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the containment reference list '<em>Attributes</em>'.
	 * @see br.ufpe.cin.bf.AttributeGroup#getAttributes()
	 * @see #getAttributeGroup()
	 * @generated
	 */
	EReference getAttributeGroup_Attributes();

	/**
	 * Returns the meta object for the attribute '{@link br.ufpe.cin.bf.AttributeGroup#getName <em>Name</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the attribute '<em>Name</em>'.
	 * @see br.ufpe.cin.bf.AttributeGroup#getName()
	 * @see #getAttributeGroup()
	 * @generated
	 */
	EAttribute getAttributeGroup_Name();

	/**
	 * Returns the meta object for the attribute '{@link br.ufpe.cin.bf.AttributeGroup#getLabel <em>Label</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the attribute '<em>Label</em>'.
	 * @see br.ufpe.cin.bf.AttributeGroup#getLabel()
	 * @see #getAttributeGroup()
	 * @generated
	 */
	EAttribute getAttributeGroup_Label();

	/**
	 * Returns the meta object for enum '{@link br.ufpe.cin.bf.Type <em>Type</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for enum '<em>Type</em>'.
	 * @see br.ufpe.cin.bf.Type
	 * @generated
	 */
	EEnum getType();

	/**
	 * Returns the factory that creates the instances of the model.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the factory that creates the instances of the model.
	 * @generated
	 */
	BfFactory getBfFactory();

	/**
	 * <!-- begin-user-doc -->
	 * Defines literals for the meta objects that represent
	 * <ul>
	 *   <li>each class,</li>
	 *   <li>each feature of each class,</li>
	 *   <li>each enum,</li>
	 *   <li>and each data type</li>
	 * </ul>
	 * <!-- end-user-doc -->
	 * @generated
	 */
	interface Literals {
		/**
		 * The meta object literal for the '{@link br.ufpe.cin.bf.impl.BenchmarkingFrameworkImpl <em>Benchmarking Framework</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see br.ufpe.cin.bf.impl.BenchmarkingFrameworkImpl
		 * @see br.ufpe.cin.bf.impl.BfPackageImpl#getBenchmarkingFramework()
		 * @generated
		 */
		EClass BENCHMARKING_FRAMEWORK = eINSTANCE.getBenchmarkingFramework();

		/**
		 * The meta object literal for the '<em><b>Name</b></em>' attribute feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EAttribute BENCHMARKING_FRAMEWORK__NAME = eINSTANCE.getBenchmarkingFramework_Name();

		/**
		 * The meta object literal for the '<em><b>Description</b></em>' attribute feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EAttribute BENCHMARKING_FRAMEWORK__DESCRIPTION = eINSTANCE.getBenchmarkingFramework_Description();

		/**
		 * The meta object literal for the '<em><b>Open Search</b></em>' attribute feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EAttribute BENCHMARKING_FRAMEWORK__OPEN_SEARCH = eINSTANCE.getBenchmarkingFramework_OpenSearch();

		/**
		 * The meta object literal for the '<em><b>Records</b></em>' containment reference list feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EReference BENCHMARKING_FRAMEWORK__RECORDS = eINSTANCE.getBenchmarkingFramework_Records();

		/**
		 * The meta object literal for the '<em><b>Lists</b></em>' containment reference list feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EReference BENCHMARKING_FRAMEWORK__LISTS = eINSTANCE.getBenchmarkingFramework_Lists();

		/**
		 * The meta object literal for the '{@link br.ufpe.cin.bf.impl.RecordImpl <em>Record</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see br.ufpe.cin.bf.impl.RecordImpl
		 * @see br.ufpe.cin.bf.impl.BfPackageImpl#getRecord()
		 * @generated
		 */
		EClass RECORD = eINSTANCE.getRecord();

		/**
		 * The meta object literal for the '<em><b>Name</b></em>' attribute feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EAttribute RECORD__NAME = eINSTANCE.getRecord_Name();

		/**
		 * The meta object literal for the '<em><b>Description</b></em>' attribute feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EAttribute RECORD__DESCRIPTION = eINSTANCE.getRecord_Description();

		/**
		 * The meta object literal for the '<em><b>Attributes</b></em>' containment reference list feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EReference RECORD__ATTRIBUTES = eINSTANCE.getRecord_Attributes();

		/**
		 * The meta object literal for the '<em><b>Groups</b></em>' containment reference list feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EReference RECORD__GROUPS = eINSTANCE.getRecord_Groups();

		/**
		 * The meta object literal for the '{@link br.ufpe.cin.bf.impl.AttributeImpl <em>Attribute</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see br.ufpe.cin.bf.impl.AttributeImpl
		 * @see br.ufpe.cin.bf.impl.BfPackageImpl#getAttribute()
		 * @generated
		 */
		EClass ATTRIBUTE = eINSTANCE.getAttribute();

		/**
		 * The meta object literal for the '<em><b>Name</b></em>' attribute feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EAttribute ATTRIBUTE__NAME = eINSTANCE.getAttribute_Name();

		/**
		 * The meta object literal for the '<em><b>Type</b></em>' attribute feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EAttribute ATTRIBUTE__TYPE = eINSTANCE.getAttribute_Type();

		/**
		 * The meta object literal for the '<em><b>Mandatory</b></em>' attribute feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EAttribute ATTRIBUTE__MANDATORY = eINSTANCE.getAttribute_Mandatory();

		/**
		 * The meta object literal for the '<em><b>List</b></em>' reference feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EReference ATTRIBUTE__LIST = eINSTANCE.getAttribute_List();

		/**
		 * The meta object literal for the '<em><b>Label</b></em>' attribute feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EAttribute ATTRIBUTE__LABEL = eINSTANCE.getAttribute_Label();

		/**
		 * The meta object literal for the '<em><b>Multiple</b></em>' attribute feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EAttribute ATTRIBUTE__MULTIPLE = eINSTANCE.getAttribute_Multiple();

		/**
		 * The meta object literal for the '<em><b>Record</b></em>' reference feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EReference ATTRIBUTE__RECORD = eINSTANCE.getAttribute_Record();

		/**
		 * The meta object literal for the '{@link br.ufpe.cin.bf.impl.ListElementImpl <em>List Element</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see br.ufpe.cin.bf.impl.ListElementImpl
		 * @see br.ufpe.cin.bf.impl.BfPackageImpl#getListElement()
		 * @generated
		 */
		EClass LIST_ELEMENT = eINSTANCE.getListElement();

		/**
		 * The meta object literal for the '<em><b>Name</b></em>' attribute feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EAttribute LIST_ELEMENT__NAME = eINSTANCE.getListElement_Name();

		/**
		 * The meta object literal for the '{@link br.ufpe.cin.bf.impl.ListImpl <em>List</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see br.ufpe.cin.bf.impl.ListImpl
		 * @see br.ufpe.cin.bf.impl.BfPackageImpl#getList()
		 * @generated
		 */
		EClass LIST = eINSTANCE.getList();

		/**
		 * The meta object literal for the '<em><b>Elements</b></em>' containment reference list feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EReference LIST__ELEMENTS = eINSTANCE.getList_Elements();

		/**
		 * The meta object literal for the '<em><b>Name</b></em>' attribute feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EAttribute LIST__NAME = eINSTANCE.getList_Name();

		/**
		 * The meta object literal for the '{@link br.ufpe.cin.bf.impl.AttributeGroupImpl <em>Attribute Group</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see br.ufpe.cin.bf.impl.AttributeGroupImpl
		 * @see br.ufpe.cin.bf.impl.BfPackageImpl#getAttributeGroup()
		 * @generated
		 */
		EClass ATTRIBUTE_GROUP = eINSTANCE.getAttributeGroup();

		/**
		 * The meta object literal for the '<em><b>Attributes</b></em>' containment reference list feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EReference ATTRIBUTE_GROUP__ATTRIBUTES = eINSTANCE.getAttributeGroup_Attributes();

		/**
		 * The meta object literal for the '<em><b>Name</b></em>' attribute feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EAttribute ATTRIBUTE_GROUP__NAME = eINSTANCE.getAttributeGroup_Name();

		/**
		 * The meta object literal for the '<em><b>Label</b></em>' attribute feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EAttribute ATTRIBUTE_GROUP__LABEL = eINSTANCE.getAttributeGroup_Label();

		/**
		 * The meta object literal for the '{@link br.ufpe.cin.bf.Type <em>Type</em>}' enum.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see br.ufpe.cin.bf.Type
		 * @see br.ufpe.cin.bf.impl.BfPackageImpl#getType()
		 * @generated
		 */
		EEnum TYPE = eINSTANCE.getType();

	}

} //BfPackage
